package com.example.demo.Controller;

import com.auth0.jwt.JWT;
import com.example.demo.entity.VO.LoginUser;
import com.example.demo.utils.JWTUtils;
import com.example.demo.utils.PassToken;
import com.example.demo.utils.ResponseResult;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;

import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;

@RestController
public class TestController {
    @Autowired
    RedisTemplate<String,Object> redisTemplate;

    @GetMapping("/test")
    public String test(){
        //读取redis中的数据
        String s=(String) redisTemplate.opsForValue().get("name");
//        String s=(String) redisTemplate.opsForValue().get("data");
//        redisTemplate.opsForValue().set("age","21",20, TimeUnit.SECONDS);
        return s;
    }
////    @PostMapping("/login")
////    public ResponseResult<String> login(@RequestBody LoginUser loginUser){
////        //先判断验证码是否正确
////        //1如何从redis取出保存的验证码
////        String storeCode= (String) redisTemplate.opsForValue().get("captcha_codes:"+loginUser.getUuid());
////        //2用户输入的验证码和storeCode比对
////        if(loginUser.getCode().equals(storeCode)){
////            String id=loginUser.getUsername();
////            String pwd=loginUser.getPassword();
////            Map<String,String> map=new HashMap<>();
////            map.put("username",id);
////            map.put("password",pwd);
////            if(id.equals("admin")&&pwd.equals("admin")){
////                String token= JWTUtils.getToken(map);
////                return ResponseResult.createBySuccess(200,token,"登录成功");
////            }
////            return ResponseResult.createBySuccess(500,"","账号或密码错误");
////        }else {
////            return ResponseResult.createBySuccess(500,"","验证码错误");
////        }
//
//
//
////        String id= (String) map.get("username");
////        String pwd= (String) map.get("password");
//
////    }
/////    @GetMapping("/getInfo")
//////    public ResponseResult<String> getInfo(HttpServletRequest request){
//////
//////        String token=request.getHeader("Authorization");
//////        System.out.println(token+"  ");
//////        String id= JWT.decode(token.substring(token.lastIndexOf(" ")+1)).getClaim("username").asString();
////////        Map<String,Object> map=new HashMap<>();
////////        map.put("name","张三");
////////        map.put("avator","1.jpg");
//////        return ResponseResult.createBySuccess(200,id,"查询成功");
////
////    }
//
////    @PassToken
////    @GetMapping("/getBanners")
////    public ResponseResult<List<String>> getBanners(){
////        List<String> list=new ArrayList<>();
////        list.add("/images/1.jpg");list.add("/images/2.jpg");list.add("/images/3.jpg");
////        return ResponseResult.createBySuccess(200,list,"显示轮播图");
////    }

}

